#ifndef FOLLOWTHELEADER_H
#define FOLLOWTHELEADER_H
#include "FindRobots.hpp"
#include "Motor.h"
#include "Bumper.h"
#include "LED.h"
#include "send.h"
#include "swarmSocketServer.h"
#include "swarmSocketClient.h"
#include "Network.h"
#include "robotParser.h"
#include "cluster.h"
#include <climits>
#include <cfloat>
#include <vector>
#include <string>
#include <iostream>
void leaderQuerry(Network &net, map<int, double> dist);
void leaderDesignate(Network &net, map<int, double> &dist, vector<bool> &inTrain, int mf);
void leaderWaitForReady(Network& net, int mf);
void leaderWaitForTrain(Network& net);

void followerWaitForInstruction(Network& net, int& ml, FindRobots& finder, vector<bool> &inTrain);
void followerGetReady(Network& net, int& ml, FindRobots& finder);
void followerBecomeMiniLeader(Network& net, int& mf, FindRobots& finder, vector<bool> &inTrain, map<int, double>& dist);

void followTheLeader();
#endif

